Python/it

Descrizione

Python è un linguaggio di programmazione di alto livello per scopi generali, comunemente utilizzato in applicazioni di grandi dimensioni per automatizzare alcune attività creando script o macro.

In FreeCAD, il codice Python può essere utilizzato per creare vari elementi in modo programmatico, senza la necessità di fare clic sull'interfaccia utente grafica. Inoltre, molti strumenti e ambienti di lavoro di FreeCAD sono programmati in Python.

Vedere Introduzione a Python per conoscere il linguaggio di programmazione Python, quindi Guida agli Script Python e Script di base per FreeCAD per iniziare a creare script in FreeCAD .

Leggibilità

La leggibilità del codice Python è uno degli aspetti più importanti di questo linguaggio. L'uso di uno stile chiaro e coerente all'interno della comunità Python facilita i contributi da parte di diversi sviluppatori, poiché i programmatori Python più esperti si aspettano che il codice sia formattato in un certo modo e segua determinate regole. Quando si scrive codice Python, è consigliabile seguire PEP8: Style Guide for Python Code e PEP257: Docstring Conventions.

Questi documenti presentano le spiegazioni in modo più intuitivo:

Convenzioni

In questa documentazione dovrebbero essere seguite alcune convenzioni per gli esempi Python.

Questa è una tipica firma di funzione

Wire = make_wire(pointslist, closed=False, placement=None, face=None, support=None)
Wire = make_wire(pointslist, False, None, None, None)
Wire = make_wire(pointslist, False, None, None)
Wire = make_wire(pointslist, False, None)
Wire = make_wire(pointslist, False)
Wire = make_wire(pointslist)
In questo esempio il primo argomento non ha un valore predefinito quindi dovrebbe essere sempre incluso.
Wire = make_wire(pointslist, closed=False, placement=None, face=None)
Wire = make_wire(pointslist, closed=False, face=None, placement=None)
Wire = make_wire(pointslist, placement=None, closed=False, face=None)
Wire = make_wire(pointslist, support=None, closed=False, placement=None, face=None)
p1 = Vector(0, 0, 0)
p2 = Vector(1, 1, 0)
p3 = Vector(2, 0, 0)
Wire = make_wire([p1, p2, p3], closed=True)
a_list = [1, 2, 3,
          2, 4, 5]

Wire = make_wire(pointslist,
                False, None,
                None, None)
Wire = make_wire(pointslist, closed=True, face=True)
Window = make_window(Wire, name="Big window")

Importazione

Le funzioni Python sono archiviate in file chiamati moduli. Prima di utilizzare qualsiasi funzione in quel modulo, il modulo deve essere incluso nel documento con l'istruzione import.

Questo crea funzioni con prefisso, ovvero module.function(). Questo sistema previene conflitti di nome con funzioni che hanno lo stesso nome ma che provengono da moduli diversi. Ad esempio, le due funzioni Arch.make_window() e myModule.make_window() possono coesistere senza problemi.

Gli esempi completi dovrebbero includere le importazioni necessarie e le funzioni prefissate.

import FreeCAD as App
import Draft

p1 = App.Vector(0, 0, 0)
p2 = App.Vector(1, 1, 0)
p3 = App.Vector(2, 0, 0)
Wire = Draft.make_wire([p1, p2, p3], closed=True)
import FreeCAD as App
import Draft
import Arch

p1 = App.Vector(0, 0, 0)
p2 = App.Vector(1, 0, 0)
p3 = App.Vector(1, 1, 0)
p4 = App.Vector(0, 2, 0)
pointslist = [p1, p2, p3, p4]

Wire = Draft.make_wire(pointslist, closed=True, face=True)
Structure = Arch.make_structure(Wire, name="Big pillar")